/*
 * @Descripttion: 
 * @version: 
 * @Author: turingchang
 * @Date: 2020-10-09 09:16:00
 * @LastEditors: turingchang
 * @LastEditTime: 2020-12-21 15:32:15
 */

let ms = require('m-service');

 // 启动自定义
class AppBootHook {

  constructor(app) {
    this.app = app;
  }

  // 配置文件即将加载，这是最后动态修改配置的时机
  async configWillLoad(){
  }  
  // 文件加载完成
  async didLoad() {
    // 请将你的插件项目中 app.beforeStart 中的代码置于此处。
  }
  // 插件启动完毕
  async willReady() {
    // 请将你的应用项目中 app.beforeStart 中的代码置于此处。
  }
  // worker 准备就绪
  async didReady(){
    ms.createApp({
      centers:this.app.config.xsoa.center, //指定注册服务中心      
      services:{ //启动服务
        port: this.app.config.cluster.listen.port,
        dir: __dirname,
        names:[this.app.config.xsoa.localServerName],
      }
    });
  }
  // 应用启动完成
  async serverDidReady(){
  }
  // 应用即将关闭
  async beforeClose(){
  }
}

module.exports = AppBootHook;